/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package co.edu.eam.clinica.logica.bo;

import co.edu.eam.persitencia.dao.Interfaz.IDAOConsulta;
import co.edu.eam.persitencia.dao.implementacion.DAOConsulta;
import co.edu.eam.persitencia.entidades.Procedimiento;
import co.edu.eam.persitencia.utilidades.FactoryEntityManager;
import javax.persistence.EntityManager;

/**
 *
 * @author EAM
 */
public class BOProcedimiento {
    
    static EntityManager fabrica = FactoryEntityManager.getEm();
    IDAOConsulta daocon;
    
    
    public BOProcedimiento() {
       daocon= new DAOConsulta(fabrica);
    }
    
    public void crearProcedimiento(Procedimiento p)throws Exception{
        if (buscarProcedimiento(p.getId())==null) {
            throw  new Exception("El Procedimiento A Sido Creado Exitosamente");
        }else{
            throw  new Exception("El Procedimiento Ya Existe");
        }
    }
    
    public Procedimiento buscarProcedimiento(Long id) throws Exception{
        return daocon.buscarProcedimiento(id);
    }
    
    public void editarProcedimiento(Procedimiento p)throws Exception{
        if(buscarProcedimiento(p.getId())==null){
            throw new Exception("El Procedimiento No Pudo Ser Editado Porque No existe");
            
        }else{
            daocon.editarProcedimiento(p);
            throw new Exception("El Procedimiento Fue Editado Exitosamente");
        }
    }
    
    public void eliminarProcedimiento(Procedimiento p) throws Exception{
        if(buscarProcedimiento(p.getId())==null){
            throw new Exception("El Procedimiento No Pudo Ser Eliminado Porque No existe");
            
        }else{
            daocon.eliminarProcedimiento(p);
            throw new Exception("El Procedimiento Fue Eliminado Exitosamente");
        }
    }
    
}
